package com.hourse.app.service;

import com.hourse.okx.config.APIConfiguration;
import com.hourse.platform.exception.AppException;

import java.io.IOException;

/**
 * @作者 ：lichenguang
 * @描述 ：【】
 * @创建 ：2022/3/22 21:35
 */
public interface PlatformOyxService {

  /**
   * @描述 ：【产品深度】
   * @作者 ：lichenguang
   * @时间 ：2022/3/25 15:52
   */
  Object getOrderBook(String currency, APIConfiguration configNoAuth) throws AppException;

  /**
   * @描述 ：【产品历史成交数据】
   * @作者 ：lichenguang
   * @时间 ：2022/3/25 16:12
   */
  Object getTrans(String currency, APIConfiguration configNoAuth) throws AppException;

  /**
   * @描述 ：【产品k线图数据】
   * @作者 ：lichenguang
   * @时间 ：2022/3/25 16:33
   */
  Object getK(String currency, String type, APIConfiguration configNoAuth) throws AppException;

  /**
   * @描述 ：【获取单个货币行情】
   * @作者 ：lichenguang
   * @时间 ：2022/3/25 16:39
   */
  Object getTicker(String market, APIConfiguration configNoAuth);

  /**
   * @描述 ：【获取账户余额（当前持仓）】
   * 传递 currency(币种)，则根据币种查询，否则查询所有币种余额
   * @作者 ：lichenguang
   * @时间 ：2022/3/25 11:25
   */
  Object balance(String currency, APIConfiguration config) throws AppException;

  /**
   * @描述 ：【获取历史委托单】
   * @作者 ：lichenguang
   * @时间 ：2022/3/25 16:15
   */
  Object getOrders(String currency, APIConfiguration config) throws AppException;

  /**
   * @描述 ：【未成交订单】
   * @作者 ：lichenguang
   * @时间 ：2022/3/25 16:15
   */
  Object getOrdersPending(String currency, APIConfiguration configuration) throws AppException;

  /**
   * @描述 ：【委托下单】
   * @作者 ：lichenguang
   * @时间 ：2022/3/25 16:15
   */
  Object order(String amount, String currency, String uKey, String uSecret, String price, String tradeType) throws AppException;


}
